﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace StuertzDatenbank
{
    public partial class Kundensuche : Form
    {
        private Sprachfile sprachfile;
        private List<Kunde> kundenlisteVereinfacht;
        public Kundensuche(Benutzer benutzer)
        {
            this.benutzer = benutzer;
            dbf = new DBF();
            sprachfile = new Sprachfile();
            kundenlisteVereinfacht = new List<Kunde>();
            InitializeComponent();
            InitializeComponentChanged();
            Refresh();
        }

        private void InitializeComponentChanged()
        {
            this.Text = sprachfile.Kundesuchen;
            this.Start.Text = sprachfile.Start;
            this.Kundennamelabel.Text = sprachfile.Kundenname;
            this.Kundennummer.Text = sprachfile.Kundennummer;
            this.Auftragnummerlabel.Text = sprachfile.Auftragnummer;
            this.SuchenButton.Text = sprachfile.Suche;

            kundenlisteVereinfacht = dbf.alleKundenAusgeben();
            for (int i = 0; i < kundenlisteVereinfacht.Count; i++)
            {
                this.KundennamecomboBox.Items.Add(kundenlisteVereinfacht[i].getName());
            }
            this.Visible = true;
            this.Refresh();
        }

        private void Start_Click(object sender, EventArgs e)
        {
            this.Visible = false;
            startgui gui = new startgui(benutzer);
            this.Dispose();
            gui.ShowDialog();

        }

        private void Zurück_Click(object sender, EventArgs e)
        {
            this.Visible = false;
            KundeGui kundengui = new KundeGui(benutzer);
            this.Dispose();
            kundengui.ShowDialog();
        }

        public Benutzer benutzer { get; set; }
        public Kunde kunde { get; set; }

        private void SuchenButton_Click(object sender, EventArgs e)
        {
            Kunde aktuellerkunde = new Kunde(-1);
            if (this.KundenummerBox.Text.Length > 0)
            {
               aktuellerkunde= dbf.getKundeByID(int.Parse(KundenummerBox.Text));
                
            }
           
            else if (this.KundennameTextBox.Text.Length > 0)
            {
                for (int i = 0; i < kundenlisteVereinfacht.Count ; i++)
                {
                    if (kundenlisteVereinfacht[i].getName()==this.KundennameTextBox.Text)
                    {
                        aktuellerkunde = dbf.getKundeByID(kundenlisteVereinfacht[i].getKundennummer());
                    }
                }
                
            }
            else
            {

                aktuellerkunde = dbf.getKundeByID(this.kundenlisteVereinfacht[this.KundennamecomboBox.SelectedIndex].getKundennummer());
            }

            this.Visible = false;
            KundendatenGui gui = new KundendatenGui (benutzer, aktuellerkunde);
            this.Dispose();
            gui.ShowDialog();

        }

        private void Kundensuchegui_Load(object sender, EventArgs e)
        {

        }



        public DBF dbf { get; set; }
    }
}
